package com.gitee.qdbp.general.trade.api.order.main.service;

import java.util.List;
import com.gitee.qdbp.able.exception.ServiceException;
import com.gitee.qdbp.able.jdbc.ordering.OrderPaging;
import com.gitee.qdbp.able.jdbc.paging.PageList;
import com.gitee.qdbp.general.trade.api.order.main.model.OrderFormBean;
import com.gitee.qdbp.general.trade.api.order.main.model.OrderFormDetails;
import com.gitee.qdbp.general.trade.api.order.main.model.OrderFormWhere;
import com.gitee.qdbp.general.trade.api.order.main.model.OrderItemBean;
import com.gitee.qdbp.general.trade.api.order.main.model.OrderItemWhere;

/**
 * 订单主业务接口
 *
 * @author zhh
 * @version 180622
 */
public interface IOrderMainQueryer {

    OrderFormBean find(String orderId) throws ServiceException;

    OrderFormBean find(OrderFormWhere where) throws ServiceException;

    PageList<OrderFormBean> list(OrderFormWhere where, OrderPaging paging) throws ServiceException;

    List<OrderItemBean> listItems(String orderId) throws ServiceException;

    PageList<OrderItemBean> listItems(OrderItemWhere where, OrderPaging paging) throws ServiceException;

    PageList<OrderFormDetails> listDetails(OrderFormWhere where, OrderPaging paging) throws ServiceException;
}
